Add allow_ddm_traffic to PortConfig - #11091
Conversation
6cc81ce to
238e6b3
Compare
50dd23a to
e71b23d
Compare
238e6b3 to
8ba5f1c
Compare
e71b23d to
5cea605
Compare
8ba5f1c to
8f9463f
Compare
4ffb3b1 to
4109307
Compare
| management_addrs: c.management_ip.map(|ip| vec![ip]), | ||
| }), | ||
| tx_eq, | ||
| allow_ddm_traffic: false, |
There was a problem hiding this comment.
This isn't necessarily a blocker for this PR, but might impact testing - IIUC, as written, RSS will write any allow_ddm_traffic: true values from the RSS config into the bootstore when it does it initial population of it. But once Nexus starts running, the sync_switch_configuration bg task will send down new bootstore contents with this false set on every port, so you may lose the ddm traffic as soon as Nexus gets started running bg tasks.
There was a problem hiding this comment.
Damn. This is a huge problem. I didn't consider that on the proto rack nexus would overwrite the RSS settings immediately. Getting DDM working cross-rack seems unworkable without adding the nexus side. I was really hoping to avoid this until after the initial ddm work.
There was a problem hiding this comment.
I'm going to merge this in to avoid a rebase as on it's own it doesn't break anything. Then I'll work on the nexus/crdb side under protest.
There was a problem hiding this comment.
The fix turned out to not be as bad as I thought.
#11117
4109307 to
62a063c
Compare
This is necessary to both enable front ports for DDM and disable front ports as uplink ports in dpd. Both are necessary for multirack.
It's important to note that this is a temporary fix to get multirack moving. We expect to overhaul the structure of
RackNetworkConfigandPortConfigsoon. BgpPeer info should likely live outside the port itself and ports should only contain link-level information.